#include <iostream>

//
// Clases
//

class cA {
	int m_a;

public:
	cA(int a=3) {m_a = a;}
	~cA() {}
	inline void print() {std::cout << m_a << std::endl;}
};


class cB {
	int m_b;
	cA m_ca;

public:
	cB(int ca=3, int b=0) : m_ca(ca) {m_b = b;}
	~cB() {m_ca.~cA();}
	inline void print() {std::cout << m_b << std::endl; m_ca.print();}
};


//
// Main
// 

int main(void) {
	cB arreglo[3];

	for(int i=0; i<3; i++)
		arreglo[i].print();

	return 0;
}

